Rank-Sensitive Priority Queues
نویسندگان
چکیده
We introduce the rank-sensitive priority queue — a data structure that always knows the minimum element it contains, for which insertion and deletion take O(log(n/r)) time, with n being the number of elements in the structure, and r being the rank of the element being inserted or deleted (r = 1 for the minimum, r = n for the maximum). We show how several elegant implementations of rank-sensitive priority queues can be obtained by applying novel modifications to treaps and amortized balanced binary search trees, and we show that in the comparison model, the bounds above are essentially the best possible. Finally, we conclude with a case study on the use of rank-sensitive priority queues for shortest path computation.
منابع مشابه
Rank-Relaxed Weak Queues: Faster than Pairing and Fibonacci Heaps?
A run-relaxed weak queue by Elmasry et al. (2005) is a priority queue data structure with insert and decrease-key in O(1) as well as delete and delete-min in O(log n) worst-case time. One further advantage is the small space consumption of 3n+O(log n) pointers. In this paper we propose rank-relaxed weak queues, reducing the number of rank violations nodes for each level to a constant, while pro...
متن کاملThe Power of Choice in Priority Scheduling
Consider the following random process: we are given n queues, into which elements of increasing labels are inserted uniformly at random. To remove an element, we pick two queues at random, and remove the element of lower label (higher priority) among the two. The cost of a removal is the rank of the label removed, among labels still present in any of the queues, that is, the distance from the o...
متن کاملThe Weak-Heap Family of Priority Queues in Theory and Praxis
In typical applications, a priority queue is used to execute a sequence of n insert , m decrease, and n delete-min operations, starting with an empty structure. We study the performance of different priority queues for this type of operation sequences both theoretically and experimentally. In particular, we focus on weak heaps, weak queues, and their relaxed variants. We prove that for relaxed ...
متن کاملBenchmarking Concurrent Priority Queues: Performance of k-LSM and Related Data Structures
A number of concurrent, relaxed priority queues have recently been proposed and implemented. Results are commonly reported for a throughput benchmark that uses a uniform distribution of keys drawn from a large integer range, and mostly for single systems. We have conducted more extensive benchmarking of three recent, relaxed priority queues on four different types of systems with different key ...
متن کاملExperimental Study of High Performance Priority Queues
The priority queue is a very important and widely used data structure in computer science, with a variety of applications including Dijkstra’s Single Source Shortest Path algorithm on sparse graph types. This study presents the experimental results of a variety of priority queues. The focus of the experiments is to measure the speed and performance of highly specialized priority queues in out-o...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009